A computer printout is attached hereto in microfiche form and is incorporated herein by reference. The printout comprises executable program files in hexadecimal format. This appendix includes 2 microfiches, containing a total of 185 frames.
The present invention relates generally to data processing, and specifically to information retrieval.
Many text-processing applications available today enable users to look up information about a selected word on a computer display. For example, Microsoft Word enables a user to click on a word, and to see thesaurus or dictionary entries related to the word. In order to retrieve this information, Microsoft Word accesses a fixed, local database stored on a CD-ROM or on the computer""s hard disk.
A large number of search engines on the World-Wide-Web provide a list of hyperlinks to sites related to a user""s typed query. Typically, the user goes to the search engine""s own site, and subsequently types or copies-and-pastes one or more words of interest into a text-input box displayed by the engine.
Other software, such as TechnoCraft""s RoboWord, Mashov Software""s Babylon, and Accent Software""s WordPoint, allows a user to click on a word and see a translation of the word into a second language. One or more electronic dictionaries are provided with these packages, and are stored on the user""s computer.
Connect Innovation""s software package FlySwat appears in a sidebar next to a Web browser running on a user""s computer. FlySwat looks at text downloaded by the browser, and continually accesses and displays data from and hyperlinks to other Web sites deemed relevant by FlySwat.
It is an object of some aspects of the present invention to provide improved methods and apparatus for obtaining information from a database.
It is a further object of some aspects of the present invention to provide improved apparatus and methods for obtaining through the Internet.
In preferred embodiments of the present invention, a user of a client computer retrieves information from a server, which is coupled to the client by a network. The user designates at least one word in a body of text which is shown on a display of the client, and the client automatically transmits the designated word over the network to the server. The server processes the word and transmits data relating thereto to the client. xe2x80x9cDesignatingxe2x80x9d a word, in the context of the present patent application, means indicating a word on a display, typically with a pointing device, but alternatively or additionally with a key sequence (such as CTRL-ALT-?) applied to a marked word or to a word containing or adjacent to the cursor, whereby the user does not type the word to designate it, and whereby the user does not copy-and-paste the word from one window to a second window.
In general, the server does not have access to the body of text prior to the user""s designation of the word. Moreover, the designated word typically does not have a hyperlink associated therewith, and is generally a word in a natural language (e.g., English). Words in a xe2x80x9cnatural languagexe2x80x9d are to be understood as plain words, e.g., xe2x80x9cClinton,xe2x80x9d xe2x80x9cCalifornia,xe2x80x9d or xe2x80x9cstock market,xe2x80x9d and not as words associated with causing a computer to perform an instruction, such as xe2x80x9cwww.buy4mom.comxe2x80x9d or xe2x80x9c172.14.7.2.xe2x80x9d Thus, substantially any text (e.g., the name of a program on the Windows desktop), or file containing text, (e.g., a piece of received e-mail, a Web page, or a just-created word-processor document), is appropriate for use in the practice of embodiments of the present invention. Typically, the user designates the word simply by pointing with a pointing device (e.g., a mouse) at the word on the display, and then right-clicking on the desired word, possibly selecting a xe2x80x9cretrieve informationxe2x80x9d option from a right-click menu. Responsive thereto, the client transmits the word to the server, which automatically retrieves data from a database and transmits the data to be displayed on the client""s display.
Embodiments of the invention can be viewed in contrast to methods of information-retrieval from a remote source known in the art, in which: (a) only a limited number of words in a document are provided with options for further information-retrieval, e.g., by hyperlinking, or (b) the user must open a new window, e.g., a search engine or an electronic encyclopedia, and re-type or copy-and-paste the desired word from the user""s document to a text-entry line in the new window.
In some preferred embodiments of the present invention, data transmitted to the client comprise an advertisement, a promotional message, a hyperlink to a related Web site, or electronic commerce data, e.g., price data related to a commercial product, which are selected by the server for transmission to the client responsive to the user""s designated word.
Typically, the network comprises the Internet, and may alternatively or additionally comprise an intranet, for example, a corporate intranet. A server on a corporate intranet preferably maintains a database of corporate information for distribution to client computers connected to the intranet server, and additionally enables information to be retrieved from external servers, for example, through the Internet, using principles of the present invention.
In some preferred embodiments of the present invention, the display comprises a television, for example, a Web-TV, showing television programming which includes text on the display. The user points to a word in the text with a pointing device, and additional information related thereto is retrieved from the server. Typically, although not necessarily, the server is not related to the producers of the text.
In a preferred embodiment, a first portion of the data is displayed in a first region of the display, and a second portion of the data is displayed in a second region of the display. Typically, a small quantity of data is shown in a small window, which opens adjacent to the designated word and closes automatically. A larger quantity of data, e.g., including hyperlinks and graphics, is shown in a second, interactive, window. Alternatively or additionally, for example, text and graphics may be shown in respective windows. Further alternatively or additionally, words may be shown in one window, and columns of numbers may be shown in another window.
In some preferred embodiments of the present invention, one or more context-indicating words are drawn from the body of text and transmitted with the designated word to the server. Alternatively, some or all of the body of text is transmitted to the server, which extracts the context-indicating words therefrom. The server evaluates the designated word in the context of the context-indicating words, and transmits data from the database responsive to the evaluation. Typically, some of the context-indicating words are drawn from the same sentence as that including the designated word, to enable a grammatical and/or linguistic analysis of the designated word, and, preferably, to sharply define the context of the designated word. For example, xe2x80x9cstockxe2x80x9d next to xe2x80x9cbrokerxe2x80x9d is highly likely to have a different meaning from xe2x80x9cstockxe2x80x9d next to xe2x80x9cbarrel.xe2x80x9d Alternatively or additionally, some of the context-indicating words are drawn from elsewhere in the body of text, preferably including from a title of the body of text. Further alternatively or additionally, document analysis and/or document categorization techniques known in the art are used to determine significant content in the body of text, and to generate thereby the context-indicating words.
Preferably, at least some of the data transmitted by the server to the client are drawn from a dynamically-changing database, and may include, for example, financial, sports, weather, or news data related to the designated word. Alternatively or additionally, the data include standard reference information, such as a dictionary definition, a translation of the designated word into a second language, a set of synonyms from a thesaurus, or an encyclopedia entry.
In some preferred embodiments of the present invention, a text-grabbing algorithm and/or an optical character recognition (OCR) algorithm, are executed by the client computer to determine the word designated by the user. In a xe2x80x9ctext-grabbingxe2x80x9d algorithm, as used in the context of the present patent application, the client computer, knowing the position indicated by the pointing device, assesses instructions executed by a program running on the client, in order to determine text which was placed by the program on the display at the known position.
In some preferred embodiments of the present invention, the server establishes communities of users having similar interests, responsive to their designated words. Typically, the user communities are enabled by server-based chat groups, which optionally display links to Web pages suggested by community members.
In other preferred embodiments of the present invention, a browser or other software running on the client computer displays text, some of which is hyperlinked to a Web site maintained by a host. Preferably, the user right-clicks on a desired hyperlink, and chooses a xe2x80x9clook-before-you-linkxe2x80x9d option from a right-click menu, to cause the client computer to retrieve a small amount of information from the Web page specified by the hyperlink, and to display the retrieved information in a transient window near the designated link. In order to achieve fast retrieval from the remote host, the displayed information typically comprises a relatively small amount of text from the designated Web page, and generally does not have any graphical components. The specific data selected for retrieval may comprise, for example, the title and first few sentences or paragraphs of the designated Web page.
Alternatively, the client downloads part or all of the text from the remote server, and displays only those portions of the retrieved text having generally the same context as the paragraph containing the hyperlink clicked by the user.
There is therefore provided, in accordance with a preferred embodiment of the present invention, a method for retrieving information, including:
designating at least one word appearing in a display of a body of text generated by a first computer;
responsive to the designation, automatically transmitting the at least one designated word via a network to a second computer; and
receiving data relating to the at least one designated word from the second computer.
Typically, the body of text is not stored by the second computer, and the at least one designated word does not have a hyperlink directly associated therewith.
Preferably, receiving the data includes receiving data generated automatically by the second computer responsive to the transmission of the at least one designated word.
Further preferably, the data include electronic commerce data, an advertisement, and/or a hyperlink, selected responsive to the at least one designated word.
Still further preferably, the network includes the Internet or an intranet.
Typically, the display includes a display of a computer, preferably of the first computer. Alternatively or additionally, the display shows a television program, and the body of text is generated responsive to content of the program.
In a preferred embodiment, the method includes displaying a first portion of the data having a first quality in a first region of the display, and displaying a second portion of the data having a second quality in a second region of the display.
Alternatively or additionally, the data include video and/or audio data.
Further alternatively or additionally, designating includes receiving a designation made by a user, and receiving the data includes the user receiving a request for a hyperlink to a site preferred by the user.
Preferably, designating includes receiving a designation made by a first user, and receiving the data includes receiving an offer to enable communications between the first user and a second user responsive to the at least one designated word. Further preferably, the communications include a chat group.
Preferably, the method includes transmitting a context-indicating word, drawn from the body of text, and receiving data includes receiving data responsive to the context-indicating word. In a preferred embodiment, the context-indicating word includes a plurality of context-indicating words. Preferably, the context-indicating word is selected responsive to a grammatical analysis of a sentence including the at least one designated word. Alternatively or additionally, the context-indicating word is drawn from a position in the body of text non-adjacent to the at least one designated word. For example, the context-indicating word may be drawn from a document title associated with the body of text. Alternatively or additionally, the context-indicating word may be drawn from a different sentence in the body of text from a sentence including the at least one designated word.
Preferably, the data include dynamic data, drawn from a dynamically-changing database responsive to the at least one designated word. Further preferably, the dynamic data include financial data, sports data, weather data, and/or a weather report.
Alternatively or additionally, the data include reference information responsive to the at least one designated word. In a preferred embodiment, the reference information includes a thesaurus entry, an encyclopedia entry, and/or a dictionary entry, responsive to the at least one designated word.
Preferably, designating includes designating with a pointing device. Further preferably, designating includes causing execution of a text-grabbing algorithm or an optical character recognition algorithm to identify the at least one word.
In a preferred embodiment, a World Wide Web page displayed by a browser program includes the body of text, and designating includes causing execution of an algorithm which accesses instructions executed by the browser program in order to identify the at least one word.
There is also provided, in accordance with a preferred embodiment of the present invention, a method for providing information, including:
providing a program routine to a host computer, which transmits to a server via a network at least one word designated in a body of text shown on a display of the host computer, the transmission being executed automatically responsive to the designation, wherein the body of text is not generated by the server;
receiving the at least one transmitted word at the server; and
transmitting from the server to the host computer data relating to the at least one transmitted word.
Preferably, transmitting the data from the server includes transmitting data generated automatically by the server responsive to receiving the at least one transmitted word.
In a preferred embodiment, transmitting data from the server includes transmitting a request for a hyperlink to a preferred site. Typically, the at least one word is designated by a first user, and transmitting data from the server includes transmitting an offer to enable communications between the first user and a second user responsive to the at least one designated word.
Preferably, the method includes receiving from the host computer a context-indicating word, drawn from the body of text, wherein transmitting data from the server includes transmitting data responsive to the context-indicating word.
Further preferably, providing the program routine includes causing the host computer to execute a text-grabbing algorithm and/or an optical character recognition algorithm to identify the at least one word.
In a preferred embodiment, a World Wide Web page displayed by a browser program running on the host computer includes the body of text, and providing the program routine includes causing the host computer to execute an algorithm which accesses instructions executed by the browser program in order to identify the at least one word.
There is further provided, in accordance with a preferred embodiment of the present invention, a method for providing information, including:
contracting with one or more advertisers having respective fields of business to provide promotional data to users of a network regarding the fields of business;
receiving from a host via the network at least one word designated by one of the users, the word being in a natural language in a body of text shown on a display of the host and transmitted by the host automatically responsive to the designation;
determining that the at least one designated word relates to a given one of the fields of business; and
transmitting to the host the promotional data regarding the given field of business.
Preferably, the promotional data include electronic commerce data and/or dynamic data, drawn from a dynamically-changing database, selected responsive to the at least one designated word.
Further preferably, the method includes receiving from the host a context-indicating word, drawn from the body of text, wherein transmitting promotional data to the host data includes transmitting responsive to the context-indicating word.
There is still further provided, in accordance with a preferred embodiment of the present invention, a computer program product for retrieving information, the program having computer-readable program instructions embodied therein, which instructions are read by a host computer, causing the computer to automatically transmit via a network to a second computer at least one word that is designated on a display of the host computer in a body of text generated by a source other than the second computer, and to receive and display data relating to the at least one designated word from the second computer.
There is also provided, in accordance with a preferred embodiment of the present invention, a system for providing information to a host, the system including:
a network; and
a server, which receives via the network at least one word that is designated in a body of text shown on a display of the host, the at least one designated word being transmitted from the host to the server automatically responsive to the designation, and transmits to the host data relating to the at least one transmitted word, wherein the body of text is not generated by the server.
There is further provided, in accordance with a preferred embodiment of the present invention, a method for simplifying retrieval of information from a database, including:
designating a word in a body of text shown on a display; and
automatically retrieving the information from the database, responsive to the designation and responsive to a context-indicating word in the body of text.
There is still further provided, in accordance with a preferred embodiment of the present invention, a method for retrieving information, including:
designating a hyperlink corresponding to a Web page at a remote site;
defining an information-retrieval criterion;
retrieving natural-language text from the remote site responsive to the designation; and
automatically displaying a portion of the retrieved text responsive to the information-retrieval criterion.
Preferably, defining the criterion includes specifying a quantity of the text and/or specifying at least one context-indicating word in a document including the hyperlink. In a preferred embodiment, displaying the portion of the retrieved text includes displaying an automatically-generated summary of the text.
The present invention will be more fully understood from the following detailed description of the preferred embodiments thereof, taken together with the drawings, in which: